package com.huaxin.device.models;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.huaxin.device.dto.enums.WaterproofGrade;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;

/**
 * 电井信息表
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("electrical_well")
@Schema(description = "电井")
public class ElectricalWell extends BaseModel {

    @TableField(value = "well_name")
    @Schema(description = "电井名称", example = "强电井1号")
    private String wellName;

    @TableField(value = "well_code")
    @Schema(description = "编号", example = "WELL-01")
    private String wellCode;

    @TableField(value = "floor_range")
    @Schema(description = "覆盖楼层（如 B1-F10）", example = "B1-F10")
    private String floorRange;

    @TableField(value = "area")
    @Schema(description = "面积（㎡）", example = "5.00")
    private BigDecimal area;

    @TableField(value = "fire_door_exists")
    @Schema(description = "是否有防火门（0否，1是）", example = "1")
    private Boolean fireDoorExists;

    @TableField(value = "waterproof_grade")
    @Schema(description = "防水等级", example = "IPX5")
    private WaterproofGrade waterproofGrade;

    @TableField(value = "location")
    @Schema(description = "位置描述", example = "1号楼电梯旁")
    private String location;

    @TableField(value = "family_id")
    @Schema(description = "家庭ID", example = "family-01")
    private String familyId;
}